From e850958c568eca2b854a93ddd932386ea08910e7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Javier=20Jard=C3=B3n?= Date: Thu, 11 Mar 2010 03:31:22 +0100 Subject: [PATCH] Remove GtkOptionMenu tests --- tests/Makefile.am | 3 - tests/testmenus.c | 246 ---------------------------------------------- 2 files changed, 249 deletions(-) delete mode 100644 tests/testmenus.c diff --git a/tests/Makefile.am b/tests/Makefile.am index 09a5d8558c..31d934dd69 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -52,7 +52,6 @@ noinst_PROGRAMS = $(TEST_PROGS) \ testicontheme \ testimage \ testinput \ - testmenus \ testmenubars \ testmountoperation \ testmultidisplay \ @@ -136,7 +135,6 @@ testfilechooserbutton_DEPENDENCIES = $(TEST_DEPS) testgtk_DEPENDENCIES = $(TEST_DEPS) testinput_DEPENDENCIES = $(TEST_DEPS) testimage_DEPENDENCIES = $(TEST_DEPS) -testmenus_DEPENDENCIES = $(TEST_DEPS) testmenubars_DEPENDENCIES = $(TEST_DEPS) testmountoperation_DEPENDENCIES = $(TEST_DEPS) testmultidisplay_DEPENDENCIES = $(TEST_DEPS) @@ -201,7 +199,6 @@ testicontheme_LDADD = $(LDADDS) testiconview_LDADD = $(LDADDS) testinput_LDADD = $(LDADDS) testimage_LDADD = $(LDADDS) -testmenus_LDADD = $(LDADDS) testmenubars_LDADD = $(LDADDS) testmountoperation_LDADD = $(LDADDS) testmultidisplay_LDADD = $(LDADDS) diff --git a/tests/testmenus.c b/tests/testmenus.c deleted file mode 100644 index 4163ffdff1..0000000000 --- a/tests/testmenus.c +++ /dev/null @@ -1,246 +0,0 @@ -/* testmenus.c -- dynamically add and remove items to a menu - * Copyright (C) 2002 Red Hat, Inc. - * Author: Owen Taylor - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#undef GTK_DISABLE_DEPRECATED -#include "config.h" -#include -#include - -#include - -static GtkWidget * -create_menu (gint depth, - gboolean tearoff) -{ - GtkWidget *menu; - GtkWidget *menuitem; - GSList *group; - char buf[32]; - int i, j; - - if (depth < 1) - return NULL; - - menu = gtk_menu_new (); - group = NULL; - - if (tearoff) - { - menuitem = gtk_tearoff_menu_item_new (); - gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); - gtk_widget_show (menuitem); - } - - for (i = 0, j = 1; i < 5; i++, j++) - { - sprintf (buf, "item %2d - %d", depth, j); - menuitem = gtk_radio_menu_item_new_with_label (group, buf); - group = gtk_radio_menu_item_get_group (GTK_RADIO_MENU_ITEM (menuitem)); - - gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); - gtk_widget_show (menuitem); - if (i == 3) - gtk_widget_set_sensitive (menuitem, FALSE); - - gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), create_menu (depth - 1, TRUE)); - } - - return menu; -} - -static gboolean -change_item (gpointer user_data) -{ - GtkWidget *widget; - GtkMenuShell *shell = GTK_MENU_SHELL (user_data); - static gint step = 0; - - if (((step++ / 40) % 2) == 0) - { - g_message ("Idle add"); - - widget = gtk_menu_item_new_with_label ("Foo"); - gtk_widget_show (widget); - - gtk_menu_shell_append (shell, widget); - } - else - { - GList *children = gtk_container_get_children (GTK_CONTAINER (shell)); - - g_message ("Idle remove"); - - gtk_widget_destroy (g_list_last (children)->data); - - g_list_free (children); - } - - return TRUE; -} - -int -main (int argc, char **argv) -{ - static GtkWidget *window = NULL; - GtkWidget *box1; - GtkWidget *box2; - GtkWidget *button; - GtkWidget *optionmenu; - GtkWidget *separator; - - gtk_init (&argc, &argv); - - if (!window) - { - GtkWidget *menubar; - GtkWidget *menu; - GtkWidget *submenu; - GtkWidget *menuitem; - GtkAccelGroup *accel_group; - - window = gtk_window_new (GTK_WINDOW_TOPLEVEL); - - g_signal_connect (window, "destroy", - G_CALLBACK(gtk_main_quit), NULL); - g_signal_connect (window, "delete-event", - G_CALLBACK (gtk_true), NULL); - - accel_group = gtk_accel_group_new (); - gtk_window_add_accel_group (GTK_WINDOW (window), accel_group); - - gtk_window_set_title (GTK_WINDOW (window), "menus"); - gtk_container_set_border_width (GTK_CONTAINER (window), 0); - - - box1 = gtk_vbox_new (FALSE, 0); - gtk_container_add (GTK_CONTAINER (window), box1); - gtk_widget_show (box1); - - menubar = gtk_menu_bar_new (); - gtk_box_pack_start (GTK_BOX (box1), menubar, FALSE, TRUE, 0); - gtk_widget_show (menubar); - - menu = create_menu (2, TRUE); - - menuitem = gtk_menu_item_new_with_label ("test\nline2"); - gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu); - gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem); - gtk_widget_show (menuitem); - - - menuitem = gtk_menu_item_new_with_label ("dynamic"); - submenu = create_menu (3, TRUE); - gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), submenu); - gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem); - gtk_widget_show (menuitem); - - gdk_threads_add_timeout (250, change_item, submenu); - - menuitem = gtk_menu_item_new_with_label ("bar"); - gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), create_menu (4, TRUE)); - gtk_menu_item_set_right_justified (GTK_MENU_ITEM (menuitem), TRUE); - gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem); - gtk_widget_show (menuitem); - - box2 = gtk_vbox_new (FALSE, 10); - gtk_container_set_border_width (GTK_CONTAINER (box2), 10); - gtk_box_pack_start (GTK_BOX (box1), box2, TRUE, TRUE, 0); - gtk_widget_show (box2); - - menu = create_menu (1, FALSE); - gtk_menu_set_accel_group (GTK_MENU (menu), accel_group); - - menuitem = gtk_separator_menu_item_new (); - gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); - gtk_widget_show (menuitem); - - menuitem = gtk_check_menu_item_new_with_label ("Accelerate Me"); - gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); - gtk_widget_show (menuitem); - gtk_widget_add_accelerator (menuitem, - "activate", - accel_group, - GDK_F1, - 0, - GTK_ACCEL_VISIBLE); - menuitem = gtk_check_menu_item_new_with_label ("Accelerator Locked"); - gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); - gtk_widget_show (menuitem); - gtk_widget_add_accelerator (menuitem, - "activate", - accel_group, - GDK_F2, - 0, - GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED); - menuitem = gtk_check_menu_item_new_with_label ("Accelerators Frozen"); - gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); - gtk_widget_show (menuitem); - gtk_widget_add_accelerator (menuitem, - "activate", - accel_group, - GDK_F2, - 0, - GTK_ACCEL_VISIBLE); - gtk_widget_add_accelerator (menuitem, - "activate", - accel_group, - GDK_F3, - 0, - GTK_ACCEL_VISIBLE); - - optionmenu = gtk_option_menu_new (); - gtk_option_menu_set_menu (GTK_OPTION_MENU (optionmenu), menu); - gtk_option_menu_set_history (GTK_OPTION_MENU (optionmenu), 3); - gtk_box_pack_start (GTK_BOX (box2), optionmenu, TRUE, TRUE, 0); - gtk_widget_show (optionmenu); - - separator = gtk_hseparator_new (); - gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0); - gtk_widget_show (separator); - - box2 = gtk_vbox_new (FALSE, 10); - gtk_container_set_border_width (GTK_CONTAINER (box2), 10); - gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0); - gtk_widget_show (box2); - - button = gtk_button_new_with_label ("close"); - g_signal_connect_swapped (button, "clicked", - G_CALLBACK(gtk_widget_destroy), window); - gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0); - gtk_widget_set_can_default (button, TRUE); - gtk_widget_grab_default (button); - gtk_widget_show (button); - } - - if (!gtk_widget_get_visible (window)) - { - gtk_widget_show (window); - } - else - { - gtk_widget_destroy (window); - window = NULL; - } - - gtk_main (); - - return 0; -} - -- 2.30.2